package jsqlite;

/* loaded from: classes2.dex */
public class Stmt {
    private long handle = 0;
    protected int error_code = 0;

    private static native void internal_init();

    public native void bind(int i) throws Exception;

    public native void bind(int i, double d) throws Exception;

    public native void bind(int i, int i2) throws Exception;

    public native void bind(int i, long j) throws Exception;

    public native void bind(int i, String str) throws Exception;

    public native void bind(int i, byte[] bArr) throws Exception;

    public native int bind_parameter_count() throws Exception;

    public native int bind_parameter_index(String str) throws Exception;

    public native String bind_parameter_name(int i) throws Exception;

    public native void bind_zeroblob(int i, int i2) throws Exception;

    public native void clear_bindings() throws Exception;

    public native void close() throws Exception;

    public native byte[] column_bytes(int i) throws Exception;

    public native int column_count() throws Exception;

    public native String column_database_name(int i) throws Exception;

    public native String column_decltype(int i) throws Exception;

    public native double column_double(int i) throws Exception;

    public native int column_int(int i) throws Exception;

    public native long column_long(int i) throws Exception;

    public native String column_name(int i) throws Exception;

    public native String column_origin_name(int i) throws Exception;

    public native String column_string(int i) throws Exception;

    public native String column_table_name(int i) throws Exception;

    public native int column_type(int i) throws Exception;

    protected native void finalize();

    public native boolean prepare() throws Exception;

    public native void reset() throws Exception;

    public native int status(int i, boolean z);

    public native boolean step() throws Exception;

    public Object column(int i) throws Exception {
        int column_type = column_type(i);
        if (column_type != 1) {
            if (column_type != 2) {
                if (column_type != 3) {
                    if (column_type != 4) {
                        return null;
                    }
                    return column_bytes(i);
                }
                return column_string(i);
            }
            return new Double(column_double(i));
        }
        return new Long(column_long(i));
    }

    static {
        internal_init();
    }
}
